#if !defined(AFX_TOPPROPERTYSHEET_H__E5B6A63B_1911_4EE5_A4DF_C9930DDCD781__INCLUDED_)
#define AFX_TOPPROPERTYSHEET_H__E5B6A63B_1911_4EE5_A4DF_C9930DDCD781__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// TopPropertySheet.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CTopPropertySheet

class WindowLocker;

class CTopPropertySheet : public CPropertySheet
{
	DECLARE_DYNAMIC(CTopPropertySheet)

// Construction
public:
	CTopPropertySheet(UINT nIDCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);
	CTopPropertySheet(LPCTSTR pszCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0);

// Attributes
public:
  bool m_bModified;
  bool m_bDisableOKButton;

// Operations
public:
  void SetbModified(bool bModified = true) {m_bModified = bModified;}
  bool GetbModified() const {return m_bModified;}
  void SetbDisableOKButton(bool bDisableOKButton = true) {m_bDisableOKButton = bDisableOKButton;}
  bool GetbDisableOKButton() const {return m_bDisableOKButton;}

protected:
  void DisableOKButton();

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CTopPropertySheet)
	public:
	virtual BOOL OnInitDialog();
	//}}AFX_VIRTUAL

// Implementation
public:
	virtual ~CTopPropertySheet();

	// Generated message map functions
protected:
  WindowLocker * m_pWindowLocker;

	//{{AFX_MSG(CTopPropertySheet)
	afx_msg void OnDestroy();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_TOPPROPERTYSHEET_H__E5B6A63B_1911_4EE5_A4DF_C9930DDCD781__INCLUDED_)
